package cn.bobohost.market.dao;

import cn.bobohost.market.pojo.User;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import java.util.List;

/**
 * 用户持久层接口
 * 默认无需实现，底层会自动通过动态代理实现。
 */
public interface UserDemoMapper extends BaseMapper<User> {

    /**
     * 根据id来查询用户（注解）
     * @param id
     * @return
     */
    @Select("select * from t_user where id = #{id}")
    User selectUserById(Integer id);


    /**
     * 根据id来查询用户（xml方式）
     * 注意方法名必须和xml中的id一致！！！
     * @param id
     * @return
     */
    User selectUser(Integer id);


    @Select("select * from t_user where user_name like concat('%',#{userName},'%')")
    List<User> selectByUserNameLike(String userName);

    //保存
    @Insert("insert into t_user values (null,#{userName},#{age})")
    void insertUser(User user);

    @Update("update t_user set user_name = #{userName} ,age = #{age} where id = #{id}")
    void updateUserById(User user);

    @Delete("delete from t_user where id =#{id}")
    void deleteUserById(Integer id);


}
